/**
 * 
 */
package rs.fon.rapidminer.operator.learner.tree;

import rs.fon.rapidminer.process.annotation.Parameter;
import com.rapidminer.example.ExampleSet;
import com.rapidminer.example.Attribute;
import com.rapidminer.example.set.SplittedExampleSet;

import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.concurrent.atomic.AtomicInteger;

import com.rapidminer.example.Attribute;
import com.rapidminer.example.Example;
import com.rapidminer.example.set.Partition;
import com.rapidminer.example.set.SplittedExampleSet;

import rs.fon.rapidminer.process.annotation.Parameter;

/**
 * @author Nikola Nikolic
 * 
 */
public interface PossibleSplit {
	 
	public Object DoWork(ExampleSet exampleSet, List<rs.fon.rapidminer.process.Parameter> parameters, boolean [] attributesForSplitting, double insignificanceParameter, int depth);
	public Object GetBestAttribute(SplittedExampleSet exampleSet);	
	public Object GetBenefit(SplittedExampleSet exampleSet);
	
}
